<?php namespace Common\Model;
use Hdphp\Model\Model;
class Tag extends Model{
	//指定模型要操作的表名
	protected $table = 'tag';
	//自动验证的数组
	protected $validate = array(
		//表单中的需要验证的内容在这写
		//array(字段名,验证方法,错误信息,验证条件,验证时间)
		array('tname','required','标签名称不能为空',3,3),
	);
	
	//自定义写入数据库方法，引用框架中的方法
	public function addData(){
		//调用在执行add方法之前，必须经过create方法进行验证，否则无法执行add方法，无法添加
		//用于检测用户提交的信息是否合法正确
		//create方法触发自动验证
		if($this->create()){
			$tname = $_POST['tname'];
			$arr = explode("|", $tname);
			foreach($arr as $v){
				$data = array('tname'=>$v);
				//框架中的add方法	
				$this->add($data);
			}
			return true;
		}
	  	return false;
		//如果添加成功，返回一个true，方便在cateController控制器中用做判断，当执行成功时，执行给用户一个提示信息
	}
	//自定义更改数据库内容
	public function editData(){
		//调用在执行save方法之前，必须经过create方法进行验证，否则无法执行save方法，无法修改
		//用于检测用户提交的信息是否合法正确
		//create方法触发自动验证
		if($this->create()){
		//框架中的save方法，更改数据时是需要主键id的，如果此处没有写where条件，
		//则需要在用户表单写一个隐藏域，让其name为主键字段名称，value为主键值
			$this->save();
			return true;
		}
		return false;
		//如果修改成功，返回一个true，方便在cateController控制器中用做判断是否修改到数据库内容，当执行成功时，执行给用户一个提示信息
	}
	//获取标签，将文章和分类组合数据传入进来
	public function getTag($data){
		//循环遍历
		foreach($data as $k=>$v){
			//每项数据都压入对应的标签
			$data[$k]['tag'] = Db::table('article_tag')
						->join('tag','tag_tid','=','tid')
						->where("article_aid={$v['aid']}")
						->get();	
		}
		return $data;
	}
		
	
}







 ?>